﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using CAD.BLL;
using CAD.DTO;
using WFASmartketing.PRESENTACION_VENTAS;

namespace WFASmartketing.PRESENTACION_BASICOS
{
    public partial class NewCliente : Form
    {
        private RegistroVentas frmventas;
        private AddCliente cleinte;
        private int pk = 0;
        public NewCliente()
        {
            InitializeComponent();
            this.cliente_SelectAllTableAdapter.Fill(this.clienteDS.cliente_SelectAll);
        }
        public NewCliente(RegistroVentas frmventas,AddCliente cleinte)
        {
            InitializeComponent();
            this.cliente_SelectAllTableAdapter.Fill(this.clienteDS.cliente_SelectAll);
            this.frmventas = frmventas;
            this.cleinte = cleinte;
        }
      
        private void NewCliente_Load(object sender, EventArgs e)
        {
            // TODO: This line of code loads data into the 'clienteDS.cliente_SelectAll' table. You can move, or remove it, as needed.
            this.cliente_SelectAllTableAdapter.Fill(this.clienteDS.cliente_SelectAll);

        }

        private void button2_Click(object sender, EventArgs e)
        {
            limpiar();
        }
        private void limpiar()
        {
            
            txtcontacto.Text = "";
            txtcorreio.Text = "";
            txtdireccion.Text = "";
            txtnit.Text = "";
            txtnombre.Text = "";
            txtobservacion.Text = "";
            txttelefono.Text = "";
        }

        private void button4_Click(object sender, EventArgs e)
        {
            this.Hide();
        }

        private void button3_Click(object sender, EventArgs e)
        {
            string nombre = txtnombre.Text;
            if (nombre.Length == 0)
            {
                MessageBox.Show(this, "El nombre del cliente es requerido", "CLIENTES");
                txtnombre.Focus();
                return;
            }
            string nit = txtnit.Text;
            if (nit.Length == 0)
            {
                MessageBox.Show(this, "El nit del cliente es requerido", "CLIENTES");
                txtnit.Focus();
                return;
            }
            string direccion = txtdireccion.Text;
            string telefono = txttelefono.Text;
            string corre = txtcorreio.Text;
            string observacion = txtobservacion.Text;
            string contacto = txtcontacto.Text;
            if (pk == 0)
            {
               pk =clienteBLL.insertar(nombre, nit, direccion, telefono, corre, contacto, observacion);
                MessageBox.Show(this, "Se guardo el cliente correctamente", "INSERCION DE CLIENTES");
                limpiar();
                this.cliente_SelectAllTableAdapter.Fill(this.clienteDS.cliente_SelectAll);
                if(frmventas!=null){     
                        cliente pro = clienteBLL.SelectByID(pk);
                        frmventas.cargarcliente(pro);
                        cleinte.Hide();
                        this.Hide();
                } pk = 0;
                return;
            }
            clienteBLL.update(pk, nombre, nit, direccion, telefono, corre, contacto, observacion,true);
            MessageBox.Show(this, "Se guardo el cliente correctamente", "MODIFICACION DE CLIENTES");
            limpiar();
            this.cliente_SelectAllTableAdapter.Fill(this.clienteDS.cliente_SelectAll);
            int id = (int)dataGridView1.CurrentRow.Cells[0].Value;
                cliente pro2 = clienteBLL.SelectByID(pk);
                frmventas.cargarcliente(pro2);
                cleinte.Hide();
                this.Hide();
            pk = 0;
            return;
        }

        private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (dataGridView1.CurrentRow != null)
            {
                int id = (int)dataGridView1.CurrentRow.Cells[0].Value;
                pk = id;
                txtnombre.Text = dataGridView1.CurrentRow.Cells[1].Value.ToString();
                txtnit.Text = dataGridView1.CurrentRow.Cells[2].Value.ToString();
                txtdireccion.Text = dataGridView1.CurrentRow.Cells[3].Value.ToString();
                txttelefono.Text = dataGridView1.CurrentRow.Cells[4].Value.ToString();
                txtcorreio.Text = dataGridView1.CurrentRow.Cells[5].Value.ToString();
                txtcontacto.Text = dataGridView1.CurrentRow.Cells[6].Value.ToString();
                txtobservacion.Text = dataGridView1.CurrentRow.Cells[7].Value.ToString();
            }
        }
    }
}
